package com.hsnn.medstgmini.sys.dao;

import com.hsnn.medstgmini.base.std.model.StdCompinfo;
import com.hsnn.medstgmini.sys.model.RegCompInfo;
import com.hsnn.medstgmini.sys.model.RegHospInfo;
import com.hsnn.medstgmini.util.Pagination;

/**
 * @category 注册用户审核
 * @author 蔡春龙
 * @date 2015年6月25日
 */
public interface SysUserAuditDao {

	/**
	 * @category 根据id查询医疗机构注册信息
	 * @date 2015年6月24日
	 * @param hospId
	 * @return
	 */
	RegHospInfo getAuditHospById(String hospId);

	/**
	 * @category 分页查询医疗机构注册信息审核列表
	 * @date 2015年6月24日
	 * @param page
	 * @param hospInfo
	 * @return
	 */
	Pagination getAuditUserList(Pagination page, RegHospInfo hospInfo);

	/**
	 * @category 分页查询企业注册信息审核列表
	 * @date 2015年6月24日
	 * @param page
	 * @param compInfo
	 * @return
	 */
	Pagination getAuditUserList(Pagination page, RegCompInfo compInfo);
	
	/**
	 * @category 分页查询医疗机构注册信息审核日志列表
	 * @date 2015年6月24日
	 * @param page
	 * @param hospInfo
	 * @return
	 */
	Pagination getAuditUserLogList(Pagination page, RegHospInfo hospInfo);

	/**
	 * @category 分页查询企业注册信息审核日志列表
	 * @date 2015年6月24日
	 * @param page
	 * @param compInfo
	 * @return
	 */
	Pagination getAuditUserLogList(Pagination page, RegCompInfo compInfo);

	/**
	 * @category 保存医疗机构注册信息审核
	 * @date 2015年6月23日
	 * @param hospInfo
	 */
	void saveAuditHosp(RegHospInfo hospInfo);

	/**
	 * @category 根据id查询医疗机构注册信息
	 * @date 2015年6月24日
	 * @param compId
	 * @return
	 */
	RegCompInfo getAuditCompById(String compId);

	/**
	 * @category 校验注册的企业在企业库中是否存在
	 * @date 2015年6月24日
	 * @param hospInfo
	 * @return
	 */
	boolean checkCompExist(RegCompInfo compInfo);

	/**
	 * @category 获取企业库中已存在的信息
	 * @date 2015年6月26日
	 * @param compInfo
	 * @return
	 */
	StdCompinfo getExistComp(RegCompInfo compInfo);

	/**
	 * @category 保存企业注册信息审核
	 * @date 2015年6月23日
	 * @param hospInfo
	 */
	void saveAuditComp(RegCompInfo compInfo);

	
	/**
	 * @category 根据医疗机构相应等级获取其Name
	 * @author 韩守松
	 * @date   2015年10月23日
	 * @param  @param classifyId
	 * @param  @return
	 */
	String getClassifyName(String classifyId);
	
	/**
	 * @category 根据医疗机构相应等级获取其Name
	 * @author 韩守松
	 * @date   2015年10月23日
	 * @param  @param classifyId
	 * @param  @return
	 */
	String getLevelName(String levelId);
}
